home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1998 May / EnigmA AMIGA RUN 27 (1998)(G.R. Edizioni)(IT)[!][issue 1998-05].iso / recent1 / amignu.readme < prev    next >
Text File  |  1998-04-19  |  15KB  |  306 lines

  1. Short:    GNUTar 1.11.2, 68k and PPC, incl. source
  2. Author:   (various), Andreas R. Kleinert (port)
  3. Uploader: Andreas_Kleinert@t-online.de
  4. Type:     util/arc
  5. Replaces: GNUtar15.lha, PPCGNUtar16.lha
  6.  
  7.  
  8.  GNUTar Amiga 68k/PPC Port of V1.11.2 (no ixemul)
  9.  (originally from 25 Mar 1993)
  10.  
  11.  Amiga powerUP (TM) PPC Port release version: V1.7
  12.  Release Date:                                12.04.1998
  13.  ------------------------------------------------------------------
  14.  1995-98 rework, SAS/C V6.58 recompilation, GNUTar V1.11+ adaption,
  15.  and 68030, 040, 060 version plus powerUP (TM) PPC version
  16.  by Andreas R. Kleinert (email below).
  17.  
  18.  Original port of GNUTar V1.09 done by Ed Berger (email below).
  19.  
  20.  
  21.  About
  22.  -----
  23.  When extracting TAR archives on the AMIGA there always had been a problem:
  24.  the only available GNUTar port was hard to find and if you got it
  25.  finally, it was quite old and just unoptimized for higher 68k CPUs.
  26.  
  27.  On the other hand, a simple recompilation wasn't easy for most people,
  28.  since the GNU-C (GCC) Compiler isn't very widely used and adaptions
  29.  for other compilers aren't that easy (as I finally found out ;-)
  30.  
  31.  My first step to solve this problem was porting the nice, small and
  32.  handy "DeTar" utility from MS-DOS to Amiga (still on Aminet as
  33.  util/arc/DeTar.LHA and util/arc/PPCDeTar.lha).
  34.  
  35.  The usage was really simple and easy, since you'd just had to call
  36.  "DeTar [archive]" and the whole archive would have been unpacked.
  37.  While searching for Bugs within DeTar (thus using the available GNUTar
  38.  port) I decided to port GNUTar directly (since there actually appeared
  39.  some effects I thought of as bugs of DeTar, but as well possibly
  40.  could have been bugs of the Amiga version of GNUTar ;-)
  41.  
  42.  So there suddenly was a new SAS/C V6.55 port of GNUTar for the Amiga,
  43.  which wasn't perfect at all, but was thought as a base for further
  44.  actions by other people (or me :-)
  45.  
  46.  People greatly reacted on this new GNUTar port and reported bugs
  47.  as well as requested updates, which should make use of features
  48.  of newer GNUTar versions.
  49.  
  50.  So I dropped the old V1.09 sources ported by Ed Berger and began
  51.  porting V1.11.2 (a beta test release) to the Amiga, still using
  52.  some of the old port stubs (but GCC stuff became useless now).
  53.  
  54.  Yet did not succeed in correctly porting 1.11.8
  55.  (even did not try since April '96 ;-)
  56.  
  57.  
  58.  Known Problems
  59.  --------------
  60.  Please note:
  61.  
  62.   - SAS/C did report about some actually uninitialized variables
  63.     and such a stuff. I did not fix that, since perhaps the concerned
  64.     routines are not often used, and since it might soon become too
  65.     much work actually digging in that code. Maybe it has been fixed
  66.     for newer versions - if not, one perhaps should report it to
  67.     the authors...
  68.     (they don't seem to have so attentive compilers ;-))
  69.  
  70.   - some of the defines and/or functions, which hadn't be present
  71.     for the GCC are actually available for SAS/C and vice versa.
  72.     So there are still some dummy-functions or (hopefully)
  73.     equivalent replacements for such things.
  74.     See the files "sas_amiga.c" and "sas_amiga2.c" for code-replacements
  75.     and the headers within "sasinclude/" and "sasinclude/sys/"
  76.     for additional defines.
  77.     I went this way, since this prevented me from changing _much_
  78.     within the original source - altough sometime it looks a little
  79.     bit like a hack.
  80.  
  81.     But the most important thing to be done was setting definitions
  82.     and compiler options in the best way and then fill in the missing
  83.     parts (sounds easier, than it was %-)
  84.  
  85.     See source/CHANGES.AMIGA for more actual changes to the source.
  86.  
  87.   - automatic compression/decompression as follows won't work:
  88.  
  89.       RunElf Gnutar.elf -c --block-size=16 --block-compress -z -f ram:x -v T:
  90.  
  91.     This is because the source in rtape_lib.c (rtapelib.c) isn't aware
  92.     about the special Amiga environment. There's no "/dev/...", there's
  93.     no "rsh", no "fork" and so on - that's why the pipe() function has
  94.     been disabled. It will always return -1 which means the user will
  95.     get an error reporting "can't open pipe" or similar.
  96.  
  97.     There's another non-ixemul GNUtar port on Aminet, which claims
  98.     to have solved this problem: it's called GNUtar-1.11.8.lha and
  99.     can be found in the same directory as this one.
  100.  
  101.   - the ELF module can be run by using either SAS/C's "RunElf"
  102.     launching tool or directly from the shell after you installed
  103.     the "ElfLoadSeg" patch from phase5 (remember to set the "e" bit)
  104.  
  105.   - ahm...well: while compiling there occured several problems
  106.     (warnings, missing functions, which had to be substituted
  107.     by well-enough-dummies, etc.). So remember: it works, but
  108.     there's really no guarantee for anything !
  109.  
  110.   -  it seems to run stable and to be useful nevertheless :-)
  111.  
  112.  Disclaimer
  113.  ----------
  114.  There's no guarantee or responsability taken for anything.
  115.  For the rest, please take a look into the included GNU license.
  116.  
  117.  Who did the port
  118.  ----------------
  119.  Andreas R. Kleinert, Fido   2:2457/350.18
  120.                       UseNet Andreas_Kleinert@t-online.de
  121.                              ARK@News.wwbnet.de
  122.  
  123.  See http://home.t-online.de/home/Andreas_Kleinert/support.htm
  124.  for more ports, especially for powerUP (TM) and ppc-library.
  125.  
  126.  
  127.  Contributors
  128.  ------------
  129.    - Ed Berger              - Stefan Becker        - Christopher P. Parris
  130.    - Kjell Irgens           - Osma Ahvenlampi      - Regis Rampnoux
  131.    - Christian Bauernfeind  - David Balazic
  132.  
  133.  Port Version History
  134.  --------------------
  135.   V1.7  (12.4.1998):   - recompiled with SAS/C 7.00 beta 21
  136.                        - added note about pipe problems
  137.                        - removed temporary/redundant files
  138.                        - merged 68k and PPC version again
  139.                        - renamed archive
  140.                        - fixed some minor bugs and problems
  141.                          (mainly makefile related)
  142.                        - removed 060 version since there wasn't
  143.                          actually a noticeable difference to the
  144.                          060 version
  145.                        - moved all binaries to "bin" directory,
  146.                          source directory renamed to "src"
  147.  
  148.   V1.6   (7.2.1998):   - recompilation with SAS/C for powerUP (TM)
  149.                          PPC boards; hopefully everything still
  150.                          works as with the V1.5 version for 68k
  151.  
  152.   V1.5   (23.8.1997):  - completely recompiled with SAS/C V6.58
  153.                        - better optimization
  154.                        - updated eMail adresses
  155.                        - there's another version on Aminet,
  156.                          check it out (maybe it's better ;)
  157.  
  158.   V1.4   (12.11.1996): - completely recompiled with SAS/C V6.57
  159.                        - now different versions for
  160.                          68000, 030, 040 and 060
  161.                        - optimizing for time, not size
  162.                        - new GST
  163.                        - updated eMail adresses
  164.  
  165.   V1.3   (19.04.1996): - V1.1/1.2 had a serious bug in archive creation,
  166.                          since I did not insert the "#ifdef AMIGA" code
  167.                          fragments, which Ed Berger added to access
  168.                          devices and paths in an AmigaDOS-conformeous way
  169.                          (-> Stefan Becker, stefanb@yello.ping.de,
  170.                           who seemed to be the only one actually
  171.                           *creating* archives with GNUtar ?!)
  172.                          Fixed by adding the specific parts of 1.09-create.c
  173.                          to 1.11.2.-"create.c" only
  174.                        - GNUtar could not extract any files containing
  175.                          ":" in their names, since AmigaDOS would think
  176.                          these were actually devices (or bad device-names
  177.                          containing more than one ":").
  178.                          Fixed within "extract.c" where these additional
  179.                          ":" will be replaced by "_", also giving a
  180.                          warning message.
  181.                          (-> Christopher P. Parris, CPP1233@tntech.edu)
  182.                        - Why did I port such an old version ?
  183.                          (-> Kjell Irgens, kjelli@stud.cs.uit.no)
  184.                          Well, first I had not newer sources. Then, when
  185.                          I found one, I tried to port 1.11.8 (yesterday),
  186.                          but it seems as if the compilter produces broken
  187.                          code with unreproduceable crashes.
  188.                          It was a lot easier fixing 1.11.2 instead of
  189.                          straightly porting 1.11.8 with these fixes.
  190.                          Nevertheless, it may follow-up.
  191.  
  192.   V1.2   (11.03.1996): - fully recompiled with SAS/C V6.56
  193.                        - added Osma Ahvenlampi's fix for the
  194.                          1.0.2 protection bit problem (archive
  195.                          appeared at "util/shell" on AmiNet).
  196.  
  197.                          I adapted it to the new 1.11.2 source and
  198.                          changed the way binding it into the source
  199.                          (fully via REDEFINES.WTH, no changes to tar.h,
  200.                           thus had to call lstat() from sas_amiga.c instead
  201.                           of stat() to avoid recursion).
  202.  
  203.                          Here's what Osma originally said:
  204.  
  205.                          'This patch makes an attempt to translate Amiga
  206.                          protection bits to the closest UNIX equivalents.
  207.                          When extracting UNIX archives, it also sets the
  208.                          group and world bits as specified in the archive,
  209.                          for those with multiuser filesystems.
  210.                          When creating an archive, these bits are
  211.                          unfortunately not retained, since SAS/C's stat()
  212.                          function ignores them.'
  213.                          (-> Osma.Ahvenlampi@hut.fi)
  214.  
  215.   V1.1   (16.09.1995): - did change version counting: it's too
  216.                          confusing the old way.
  217.                          The original version number of the GNUTar
  218.                          we base on, still is mentioned at the top of
  219.                          this documentation
  220.                        - completely redid the port: we now do use
  221.                          the original GNUTar 1.11.2 (a so-called beta
  222.                          test release) instead of the AMIGA/GCC-adapted
  223.                          GNUTar 1.09.
  224.                          Kind of an update: I simply copied the new
  225.                          source over the old one, changed the compiler
  226.                          settings, added some more include files and
  227.                          resolved all inconsistencies - of course
  228.                          *without directly changing any piece* of
  229.                          the original GNU C-Sources!
  230.                          (-> Regis Rampnoux, ...)
  231.                        - README and GNU-License (COPYING) also have been
  232.                          updated - old GNU license replaced by newer one.
  233.                          There was no update to Tar.man - sorry
  234.                          (but I added a specific note to it, to cover this).
  235.                        - removed some GCC-addon's, which Ed Berger had
  236.                          designed for V1.09, but which won't work with
  237.                          V1.11.2 any longer. You may take them from
  238.                          Amiga release V1.0.2 (23.07.1995) and adapt them
  239.                          - if you like or need them for GCC.
  240.                        - again did change chmod() - there was a mysterious
  241.                          effect, which caused it to be restored to the
  242.                          old, wrong way
  243.                        - replaced 68030 and 68040 versions by a combined
  244.                          68030/040 version, since SAS/C does not
  245.                          actually make any differences for our code.
  246.  
  247.   V1.0.2 (23.07.1995): - hey, found out that the base version actually
  248.                          had been released as V1.09.
  249.                          Added note to this readme.
  250.                        - two people complained, that my GNUTar port did
  251.                          not set correct flags out of "hsparwed" for the
  252.                          amiga files when extracting from archives, as the
  253.                          old GNUTar did.
  254.                          Well, foudn out, that the old one just _did_ _not_
  255.                          _change_ the default flags (always "rwed") and
  256.                          we're now just doing the same, since the mode
  257.                          field of unix TARs is either broken ("hpw" always
  258.                          after conversion Unix->Amiga) or SAS/C's definition
  259.                          for the S_IREAD (and so on) flags aren't compatible.
  260.                          Now "rwed" will be set always.
  261.                          You may change this behaviour within "sas_chmod()"
  262.                          in "sas_amiga.c".
  263.                          (-> bussjaeg@informatik.tu-muenchen.de;
  264.                           Christian Bauernfeind,
  265.                           crisbf@theorie3.physik.uni-erlangen.de)
  266.                        - mkdir(), which needs only one argument with SAS/C
  267.                          had been called with two (got warnings).
  268.                          Now we're doing this:
  269.                            #define mkdir(x, y) mkdir(x)
  270.                          Well, it works ;-)
  271.  
  272.   V1.0.1 (07.07.1995): - re-compiled with SAS/C V6.55
  273.                        - added 68040 version
  274.                        - removed object files from archive due to size
  275.                        - fixed bug note in documentation; was not a bug
  276.                          (-> David Balazic, david.balazic@uni-mb.si)
  277.  
  278.   V1.00  (23.03.1995): - first release, compiled with SAS/C V6.51
  279.  
  280.  
  281. Original Docs
  282. -------------
  283. Following is, what Ed Berger originally wrote in "readme.1st"
  284. for V1.09. As with Amiga release V1.1 (GNUTar V1.11.2, first port release)
  285. I re-switched to the original GNU-sources in combination with some
  286. of the old code-workarounds:
  287.  
  288. ****************************************************************************
  289.  
  290. I was looking for a tar program for the Amiga, since the gcc distribution,
  291. and minix distribution files are often in this format.  Tarsplit from an
  292. old fish disk was not sufficient.  I kept hearing about gnu-tar, but
  293. never saw it archived anywhere, until now.
  294.  
  295. Since I was not able to find gnu-tar, under any separate archive on the
  296. fish disks, or on my favorite ftp-sites, I pulled this out of the UUCP
  297. distribution from uunet.  The binary and man page were on disk 2, and
  298. the source files were on disk 3.  I hope that I didn't miss anything
  299. important.  I apologize for any inconvenience this may cause.  If in doubt
  300. go back to the UUCP distribution.
  301.  
  302. -Ed Berger
  303.  eb15@andrew.cmu.edu
  304.  
  305. ****************************************************************************
  306.